;Exam2010H22FallPrg2  ZZ
;Exam2010H22HPrg2
;Am̌ꏇƃrbgt]
;----------------------
MAIN START
	LAD GR1,WORDS
	LD GR2,N
	CALL LREVRS
	RET
N DC 6
WORDS DC #BEFA,#5678,#89BD,#0315,#92C4,#BCA1
HOZON DC #BEFA,#5678,#89BD,#0315,#92C4,#BCA1
	END
;---------------
LREVRS START
	RPUSH
	LD GR3,GR1 ;WORDS̐擪AhX
	LD GR4,GR2 ;@m
	SUBA GR4,=1
	JZE LOOP2
	ADDA GR4,GR1
LOOP1 LD GR5,0,GR3 ;GR3̎wGR4w̓eւ
	LD GR6,0,GR4  ;
	ST GR5,0,GR4  ;
	ST GR6,0,GR3  ;
	LAD GR3,1,GR3 ;GR3̌Ɉʒut
	LAD GR4,-1,GR4 ;GR4ǑɈʒut
	CPA GR3,GR4
	JMI LOOP1 ;[܂̓vX̎ꏇt]
LOOP2 CALL REVRS
	LAD GR1,1,GR1 ;̌̃AhX
	SUBA GR2,=1 ;čꐔJEg
	JNZ LOOP2 ;GR2[ɂȂƏI
FIN3  RPOP
	RET
	END
;--------------------
REVRS START
	RPUSH
	LD GR4,=0    ;ʂ̃rbg
	LAD GR2,15   ;[vJE^
	LD GR3,0,GR1 ; GR3 <--- rbg
LOOP SLL GR4,1   ;ʂ̃rbgVtg
	SRL GR3,1    ;̃rbgEVtg
	JOV ON   ;̃rbgE[ɂP΂nmց@@E
	JZE FIN1 ;̃rbg̎c̃rbgׂ͂ă[
	JUMP OFF
ON OR GR4,=#0001
OFF SUBA GR2,=1 ;JE^P
	JMI FIN2    ;PUrbg
	JUMP LOOP
FIN1 SLL GR4,0,GR2
;ʂ̃rbgc̃rbgVtg@@C
FIN2 ST GR4,0,GR1
	RPOP
	RET
	END
;----------------
